1. Field of the Invention
The invention relates to a digital filter which under the control of signals indicative of filter coefficients filters an input signal according to a predetermined characteristic which is a function of said coefficients, said coefficients being divided equally into at least three successive sections and with the coefficient numerical values exhibiting symmetry for those positioned equally on both sides of the middle in the overall coefficient sequence, the values being a function of the coefficients position within a section.
2. Description of the Prior Art
A multi-sample decimator using such a filter characteristic has been disclosed for instance, in the IEEE Journal on Selected Areas in Communication, Vol. 6, No 3, April 1988, p. 520 to 526, where it is part of the encoder section of a dual-channel sigma-delta voiceband Pulse Code Modulation codec. Fed from the output of an analog double loop sigma-delta modulator delivering digital signals in the form of 1-bit words at 1,024 kHz this digital decimator decreases the word rate of the 1-bit words to 18-bit words outputted at 16 kHz, thus with a decimation ratio N of 1024/16=64. This is achieved by a 192-point, i.e. 3N, Finite Impulse Response filter with zeroes at 16 kHz and at harmonic frequencies thereof the frequency response corresponding to a sinc cubic function as proposed by J. C. Candy in IEEE Transactions on Communications, Vol. COM-33, No 3, March 1985, p. 249 to 258 and particularly p. 255. Such a response was indicated in this last article to provide adequate noise attenuation for modulations generated by means of double integration and this contrary to a sinc square function. With N, the decimation ratio, as the number of input sample values or words occurring in one period NT of the resampling where T is the sampling period at the decimator input, the duration of the filter impulse response is 3NT whereby the multi-sample decimator has to keep track of 3 output samples computed in staggered fashion at the same time. As disclosed by Candy, this sinc cubic function can be secured by dividing the time sequence of 3N numerical coefficients into 3 successive sections of N coefficients. The first article mentioned above takes advantage of the sequence of the coefficients in each of the 3 sections to compute them in multiplex fashion using a parallel adder operating at 4 times the sampling frequency of the preceding sigma-delta modulator. This occurs with the help of 4 dynamic registers, one for the coefficients of each of the 3 sections and the fourth for a pointer to the previous value using increments between two successive coefficients which, for each of the 3 sections, are a corresponding linear function of the pointer. Thus, with the above decimation ratio N=64, the coefficients of the first section start with 0, 1, 3, 6, 10, . . . while those of the third section end with the reverse sequence . . . , 10, 6, 3, 1, 0 in view of the symmetry about the middle. The corresponding sequence of increments for the first section is the natural sequence of positive integers 1, 2, 3, 4, . . . , e.g. for the 2nd to the 5th coefficient, while that for the third section is . . . , -4, -3, -2, -1, e.g. for the 61th to the 64th coefficient, i.e. . . . , 60-64, 61-64, 62-64, 63-64 showing the simple linear function consisting in subtracting 64 to obtain the successive decrements. On the other hand, in the second or middle section the linear function consists in subtracting twice the rank of the coefficient within that section from 64 whereby the first half will give decreasing increments and the second increasing decrements all doubled in size with respect to those of the first and third sections.
The circuit of the first article mentioned above permits a parallel adder to operate in multiplex to obtain the 3 coefficients simultaneously for a FIR filter structure that does not require full multipliers as the modulated input signal is a 1-bit code so that an AND operation is sufficient. Such circuitry and computation to obtain the coefficients is completed by a second decimation stage, the above digital FIR decimator filter for the first stage being followed by a digital Infinite Impulse Response bandpass filter outputting 13-bit words at 8 kHz to be subsequently converted into PCM signals at this last frequency but as compressed 8-bit signals. This final IIR decimation filter is needed, as also stressed by Candy, to remove such undesired signals at the output of the FIR filter as the residual quantization noise.
Contrary to the FIR design, that of the IIR is based on a parallel arithmetic unit, again including an adder, time-shared between several second order IIR filter sections and relying on numerical filter coefficients which this time are permanently stored in a Read Only Memory cooperating with a Randon Access Memory dealing with the state variables.
In another multi-sample FIR decimator, from 1 MHz to 32 KHz, disclosed in the IEEE Journal of Solid-State Circuits, Vol. SC-20, No 3, June 1985, p. 679 to 687, a rectangular window filter of length 64 having zeroes at 16 KHz and multiples thereof is followed by a second rectangular window filter of length 4 synthesizing zeroes at multiples of 256 kHz and finally by a 16-tap triangular window filter again creating zeroes at multiples of 16 KHz. This last part is based on triangular weights for the coefficients and shown in the IEEE Transactions on Communications, November 1976, p. 1268 to 1275, to minimize noise in nearly optimal fashion, the latter being provided by parabolic weights, i.e. with coefficients increments or decrements varying linearly, as in the first two articles referred to above, whereas they remain constant for the respective slopes with triangular weights. When combining these three windows the frequency response is no longer a sinc cubic function but it is the product of two sinc functions, corresponding to the rectangular windows, and of a sinc square function due to the triangular window. The corresponding z-transform is thus no longer EQU (1-z**-N)**3(1-z**-1)**-3
where N remains, as above, the decimation ratio, but for the particular frequencies given above it can be expressed as EQU (1-z**-64)(1-z**-4)**-1(1-z**-32)**2(1-z**-1)**-2
When one expands the last z-transform response given above into a z power series to obtain the numerical coefficients, this produces only 123 non-zero coefficients, and not 128, the corresponding power series having z**0=1 as its first term and z**-122 as its last. Indeed, the sinc square part of the response gives as last term z**(-62), i.e. the square of z**(-32+1), while this will be z**-60, with 60 obtained from ((64/4)-1).times.4, for the remaining part. These 128 coefficients do not exhibit perfect symmetry with respect to the middle values. Indeed, starting from 1 for the 1st coefficient and proceding by groups of 4 successive equal coefficient increments, these (including the first or last groups provided one assumes it is respectively preceded or followed by 0) following the natural sequence of integers upward from 1 to 8, then downward back to 1, 0, -1 down to -8 and back to -1 for the increments, one has the following string of 123 non-zero coefficients: 1, 2, 3, 4, 6, 8, 10, 12, 15, . . . , 254, 255, 256, 256, 256, 256, 256, 255, 254, . . . , 15, 12, 10, 8, 6, 4, 3, 2, 1. The latter shows that if the value climbs from 1 to 256 and down to 0 again by identical half-strings of reversely ordered coefficients, these two half-strings of 61 coefficients each naturally do not cover the 64 coefficients from positions 0 to 63 and the 64 from 64 to 127, but 61 from 0 to 60 and 61 from 62 to 122. In other words, one of the five 256 coefficients in the "middle" is left in position 61 between the two half-strings and five zeroes remain for coefficient positions 123 to 127.
Accordingly, one does not have the symmetry found for the coefficients used in the first article mentioned above when they are positioned at equal distance from the middle of the sequence and even a split of the zeroes on both sides of the sequence could not bring this about in view of the odd number of non-zero coefficients.